home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cocktail / r2l.lha / r2l / m2c / Makefile < prev    next >
Makefile  |  1992-08-18  |  2KB  |  104 lines

  1. BIN    = $(HOME)/bin
  2. LIB    = $(HOME)/lib
  3. OPT    = -O
  4. CC    = cc
  5.  
  6.                 # C library (reuse)
  7. REUSE    = ../../reuse/m2c
  8.  
  9.                 # C libraries
  10. CLIBS    = $(REUSE)/libreuse.a
  11.  
  12.                 # options for C compiler
  13. CFLAGS    = -w -I$(REUSE) $(OPT)
  14.  
  15. MFLAGS    = -c
  16.  
  17. all:    r2l
  18.  
  19. install:    r2l r2l.sh $(LIB)/r2l
  20.     if test $(LIB) = $(BIN); then echo error: BIN = LIB; false; else true; fi
  21.     sed 's;LIB;$(LIB);g' < r2l.sh > $(BIN)/r2l
  22.     chmod a+rx $(BIN)/r2l
  23.     install -c -s -m 755 r2l $(LIB)/r2l
  24.     install -c -m 644 Scanner.Tab $(LIB)/r2l
  25.     install -c -m 644 Parser.Tab $(LIB)/r2l
  26.  
  27. # installation directories
  28.  
  29. $(LIB)/r2l:    $(LIB)
  30.     sh -c "if test ! -d $(LIB)/r2l; then mkdir $(LIB)/r2l; else true; fi"
  31.  
  32. # swap all byte pairs of the files Scanner.Tab and Parser.Tab
  33.  
  34. bin.conv:
  35.     dd conv=swab < Scanner.Tab > .Scanner.Tab; mv .Scanner.Tab Scanner.Tab
  36.     dd conv=swab < Parser.Tab > .Parser.Tab; mv .Parser.Tab Parser.Tab
  37.  
  38. # SYSTEM_    = SYSTEM_.o
  39.  
  40. # HEAD
  41.  
  42. sources    : DefTable.h
  43.  
  44. sources    : DefTable.c
  45. DefTable.o    : DefTable.c DefTable.h
  46.  
  47. sources    : Errors.h
  48.  
  49. sources    : Errors.c
  50. Errors.o    : Errors.c Errors.h
  51.  
  52. sources    : Parser.h
  53.  
  54. sources    : Parser.c
  55. Parser.o    : Parser.c Parser.h
  56. Parser.o    : Scanner.h
  57. Parser.o    : Errors.h
  58. Parser.o    : Errors.h
  59. Parser.o    : DefTable.h
  60.  
  61. sources    : Scanner.h
  62.  
  63. sources    : Scanner.c
  64. Scanner.o    : Scanner.c Scanner.h
  65. Scanner.o    : Errors.h
  66.  
  67. sources    : r2l.c
  68. all    : r2l
  69. r2l.o    : r2l.c
  70. r2l.o    : Scanner.h
  71. r2l.o    : Parser.h
  72.  
  73. SYSTEM_.o    : SYSTEM_.c SYSTEM_.h
  74.  
  75. r2l    : $(SYSTEM)    \
  76.     r2l.o    \
  77.     Parser.o    \
  78.     DefTable.o    \
  79.     Errors.o    \
  80.     Scanner.o    \
  81. ;    $(CC) $(CFLAGS) -o r2l $(SYSTEM)    \
  82.     r2l.o    \
  83.     Parser.o    \
  84.     DefTable.o    \
  85.     Errors.o    \
  86.     Scanner.o    \
  87.     $(CLIBS)
  88.  
  89. # TAIL
  90.  
  91. clean    :
  92.     rm -f core *.o
  93.  
  94. .SUFFIXES: .md .mi .h .c .o
  95.  
  96. .mi.c:
  97.     mtc $(MFLAGS) $*.mi;
  98.  
  99. .md.h:
  100.     mtc $(MFLAGS) $*.md;
  101.  
  102. .c.o:
  103.     $(CC) $(CFLAGS) -c $*.c;
  104.